Autonomous Garbage Collection: Resolve Memory Leaks In Long Running Server Applications
نویسندگان
چکیده
We demonstrate the benefits of a garbage collection technique that requires neither programmer assistance or rebuilding (compiling or linking) of target applications. Thus, it effectively mitigates performance degeneration due to memory leaks in applications when source code and object code is not available. Our technique is an extension of the garbage collection method known as conservative garbage collection. We refer to this as autonomous garbage collection. Autonomous garbage collection is especially useful for long running server applications in large-scale information processing server environments. Our prototype demonstrates that this garbage collection technique is feasible. Our experimental results show that this technique is more general and easier to use than many of the previous garbage collection proposals targeted at resolving memory leaks in non-cooperative server applications. Resolve Memory Leaks Long Running Server Applications ♦♦ 07/26/98 2 Index Terms dynamic memory allocation, garbage collection, heap storage, information retrieval, memory leaks, object-oriented languages, software performance degeneration
منابع مشابه
A C++ Workbench with Accurate Non-Blocking Garbage Collector for Server Side Internet Applications
At the Institute of Computer Science Warsaw University of Technology a workbench for building server-side, dependable, Internet applications was designed and implemented. This workbench is a collection of C++ classes. The design and implementation of these classes are briefly described. The most important part of the workbench is the web server, implemented as a C++ class that can be used in a ...
متن کاملAutomatic Removal of Array Memory Leaks in Java
Current garbage collection (GC) techniques do not (and in general cannot) collect all the garbage that a program produces. This may lead to a performance slowdown and to programs running out of memory space. In this paper, we present a practical algorithm for statically detecting memory leaks occurring in arrays of objects in a garbage collected environment. No previous algorithm exists. The al...
متن کاملPlug: Automatically Tolerating Memory Leaks in C and C++ Applications
Memory leaks remain a significant challenge for C and C++ developers. Leaky applications become slower over time as their working set grows, triggering paging, and can eventually become unresponsive. At the same time, memory leaks remain notoriously difficult to debug, and comprise a large number of reported bugs in mature applications. Existing approaches like conservative garbage collection c...
متن کاملCork: Dynamic Memory Leak Detection for Java
Despite all the benefits of garbage collection, memory leaks remain a problem for Java programs. A memory leak in Java occurs when a program inadvertently maintains references to objects that it no longer needs, preventing the garbage collector from reclaiming space. At best, leaks degrade performance. At worst, they cause programs to run out of memory and crash. Small continuous leaks in long-...
متن کاملDetection and Diagnosis of Memory Leaks in Web Applications
Memory leaks – the existence of unused memory on the heap of applications – result in low performance and may, in the worst case, cause applications to crash. The migration of application logic to the client side of modern web applications and the use of JavaScript as the main language for client-side development have made memory leaks in JavaScript an issue for web applications. Significant po...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2002